package com.jmm.api.service.user;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jmm.api.pojo.domain.user.ApiAppUserDO;
import com.jmm.api.pojo.domain.user.ApiOauthDO;
import com.jmm.api.pojo.vo.login.TokenVO;

/**
 * <pre>
 * </pre>
 * <small> 2018年4月27日 | Aron</small>
 */
public interface UserService extends IService<ApiAppUserDO> {
    /** 申请token */
    TokenVO getToken(String uname, String passwd,String socialToken) ;
    /** 申请短信登录Token */
    TokenVO getSmsToken(String uname, String smscode,String socialToken) ;
    /** 用户执行更改手机号 */
    void bindingPhone(String userId,String phone,String smscode) ;
    /** 用户去更改手机号 */
    void changePhoneCheck(String userId,String smscode) ;
    /** 注册 */
    void register(String uname,String passwd,String smscode);
    /** 忘记密码 */
    void forget(String uname,String passwd,String smscode);
    /** 刷新token */
    TokenVO refreshToken(String uname, String refreshToken);
    /** 检查token是否有效：未超时、未注销*/
    boolean verifyToken(String token);
    /** 注销token */
    Boolean logoutToken(String token, String refreshToken);
    /** 制造Token */
    TokenVO createToken(ApiOauthDO user);
    /** 制造SocialToken */
    TokenVO createSocialToken(ApiOauthDO user);
}
